package com.gitee.qdbp.general.common.api.site.model.content;

import java.util.ArrayList;
import java.util.Arrays;
import java.util.Date;
import java.util.List;
import com.gitee.qdbp.general.common.enums.UsingState;

/**
 * 内容发布查询类
 *
 * @author zhh
 * @version 171012
 */
public class ContentPublishWhere extends ContentPublishBean {

    /** 版本序列号 **/
    private static final long serialVersionUID = 1L;

    /** 主键列表 **/
    private List<String> ids;

    /** 主键前模匹配条件 **/
    private String idStarts;

    /** 主键后模匹配条件 **/
    private String idEnds;

    /** 主键模糊查询条件 **/
    private String idLike;

    /** 租户编号空值/非空值查询 **/
    private Boolean tenantCodeIsNull;

    /** 租户编号前模匹配条件 **/
    private String tenantCodeStarts;

    /** 租户编号后模匹配条件 **/
    private String tenantCodeEnds;

    /** 租户编号模糊查询条件 **/
    private String tenantCodeLike;

    /** 分类编号空值/非空值查询 **/
    private Boolean categoryCodeIsNull;

    /** 分类编号前模匹配条件 **/
    private String categoryCodeStarts;

    /** 分类编号后模匹配条件 **/
    private String categoryCodeEnds;

    /** 分类编号模糊查询条件 **/
    private String categoryCodeLike;

    /** 位置编号空值/非空值查询 **/
    private Boolean placeCodeIsNull;

    /** 位置编号前模匹配条件 **/
    private String placeCodeStarts;

    /** 位置编号后模匹配条件 **/
    private String placeCodeEnds;

    /** 位置编号模糊查询条件 **/
    private String placeCodeLike;

    /** 内容编号空值/非空值查询 **/
    private Boolean contentCodeIsNull;

    /** 内容编号前模匹配条件 **/
    private String contentCodeStarts;

    /** 内容编号后模匹配条件 **/
    private String contentCodeEnds;

    /** 内容编号模糊查询条件 **/
    private String contentCodeLike;

    /** 标题空值/非空值查询 **/
    private Boolean contentTitleIsNull;

    /** 标题前模匹配条件 **/
    private String contentTitleStarts;

    /** 标题后模匹配条件 **/
    private String contentTitleEnds;

    /** 标题模糊查询条件 **/
    private String contentTitleLike;

    /** 内容空值/非空值查询 **/
    private Boolean contentValueIsNull;

    /** 描述空值/非空值查询 **/
    private Boolean contentDescIsNull;

    /** 描述前模匹配条件 **/
    private String contentDescStarts;

    /** 描述后模匹配条件 **/
    private String contentDescEnds;

    /** 描述模糊查询条件 **/
    private String contentDescLike;

    /** 排序值(越小越靠前)空值/非空值查询 **/
    private Boolean sortIndexIsNull;

    /** 最小排序值(越小越靠前) **/
    private Integer sortIndexMin;

    /** 最大排序值(越小越靠前) **/
    private Integer sortIndexMax;

    /** 选项空值/非空值查询 **/
    private Boolean optionsIsNull;

    /** 最小创建时间 **/
    private Date createTimeMin;

    /** 最大创建时间 **/
    private Date createTimeMax;

    /** 最小创建时间 **/
    private Date createTimeMinWithDay;

    /** 最大创建时间 **/
    private Date createTimeMaxWithDay;

    /** 激活时间空值/非空值查询 **/
    private Boolean activeTimeIsNull;

    /** 最小激活时间 **/
    private Date activeTimeMin;

    /** 最大激活时间 **/
    private Date activeTimeMax;

    /** 最小激活时间 **/
    private Date activeTimeMinWithDay;

    /** 最大激活时间 **/
    private Date activeTimeMaxWithDay;

    /** 过期时间空值/非空值查询 **/
    private Boolean expireTimeIsNull;

    /** 最小过期时间 **/
    private Date expireTimeMin;

    /** 最大过期时间 **/
    private Date expireTimeMax;

    /** 最小过期时间 **/
    private Date expireTimeMinWithDay;

    /** 最大过期时间 **/
    private Date expireTimeMaxWithDay;

    /** 启用状态(1.正常|2.未启用)空值/非空值查询 **/
    private Boolean usingStateIsNull;

    /** 启用状态(1.正常|2.未启用)列表 **/
    private List<UsingState> usingStates;


    /** 获取主键列表 **/
    public List<String> getIds() {
        return ids;
    }

    /** 设置主键列表 **/
    public void setIds(List<String> ids) {
        this.ids = ids;
    }

    /** 增加主键 **/
    public void addId(String... ids) {
        if (this.ids == null) {
            this.ids = new ArrayList<>();
        }
        this.ids.addAll(Arrays.asList(ids));
    }

    /** 获取主键前模匹配条件 **/
    public String getIdStarts() {
        return idStarts;
    }

    /** 设置主键前模匹配条件 **/
    public void setIdStarts(String idStarts) {
        this.idStarts = idStarts;
    }

    /** 获取主键后模匹配条件 **/
    public String getIdEnds() {
        return idEnds;
    }

    /** 设置主键后模匹配条件 **/
    public void setIdEnds(String idEnds) {
        this.idEnds = idEnds;
    }

    /** 获取主键模糊查询条件 **/
    public String getIdLike() {
        return idLike;
    }

    /** 设置主键模糊查询条件 **/
    public void setIdLike(String idLike) {
        this.idLike = idLike;
    }

    /** 判断租户编号是否为空值查询(true:空值查询|false:非空值查询) **/
    public Boolean getTenantCodeIsNull() {
        return tenantCodeIsNull;
    }

    /**
     * 设置租户编号空值查询(true:空值查询|false:非空值查询)
     *
     * @param tenantCodeIsNull 租户编号空值查询
     * @deprecated 该字段为非空字段
     */
    @Deprecated
    public void setTenantCodeIsNull(Boolean tenantCodeIsNull) {
        this.tenantCodeIsNull = tenantCodeIsNull;
    }

    /** 获取租户编号前模匹配条件 **/
    public String getTenantCodeStarts() {
        return tenantCodeStarts;
    }

    /** 设置租户编号前模匹配条件 **/
    public void setTenantCodeStarts(String tenantCodeStarts) {
        this.tenantCodeStarts = tenantCodeStarts;
    }

    /** 获取租户编号后模匹配条件 **/
    public String getTenantCodeEnds() {
        return tenantCodeEnds;
    }

    /** 设置租户编号后模匹配条件 **/
    public void setTenantCodeEnds(String tenantCodeEnds) {
        this.tenantCodeEnds = tenantCodeEnds;
    }

    /** 获取租户编号模糊查询条件 **/
    public String getTenantCodeLike() {
        return tenantCodeLike;
    }

    /** 设置租户编号模糊查询条件 **/
    public void setTenantCodeLike(String tenantCodeLike) {
        this.tenantCodeLike = tenantCodeLike;
    }

    /** 判断分类编号是否为空值查询(true:空值查询|false:非空值查询) **/
    public Boolean getCategoryCodeIsNull() {
        return categoryCodeIsNull;
    }

    /**
     * 设置分类编号空值查询(true:空值查询|false:非空值查询)
     *
     * @param categoryCodeIsNull 分类编号空值查询
     * @deprecated 该字段为非空字段
     */
    @Deprecated
    public void setCategoryCodeIsNull(Boolean categoryCodeIsNull) {
        this.categoryCodeIsNull = categoryCodeIsNull;
    }

    /** 获取分类编号前模匹配条件 **/
    public String getCategoryCodeStarts() {
        return categoryCodeStarts;
    }

    /** 设置分类编号前模匹配条件 **/
    public void setCategoryCodeStarts(String categoryCodeStarts) {
        this.categoryCodeStarts = categoryCodeStarts;
    }

    /** 获取分类编号后模匹配条件 **/
    public String getCategoryCodeEnds() {
        return categoryCodeEnds;
    }

    /** 设置分类编号后模匹配条件 **/
    public void setCategoryCodeEnds(String categoryCodeEnds) {
        this.categoryCodeEnds = categoryCodeEnds;
    }

    /** 获取分类编号模糊查询条件 **/
    public String getCategoryCodeLike() {
        return categoryCodeLike;
    }

    /** 设置分类编号模糊查询条件 **/
    public void setCategoryCodeLike(String categoryCodeLike) {
        this.categoryCodeLike = categoryCodeLike;
    }

    /** 判断位置编号是否为空值查询(true:空值查询|false:非空值查询) **/
    public Boolean getPlaceCodeIsNull() {
        return placeCodeIsNull;
    }

    /**
     * 设置位置编号空值查询(true:空值查询|false:非空值查询)
     *
     * @param placeCodeIsNull 位置编号空值查询
     * @deprecated 该字段为非空字段
     */
    @Deprecated
    public void setPlaceCodeIsNull(Boolean placeCodeIsNull) {
        this.placeCodeIsNull = placeCodeIsNull;
    }

    /** 获取位置编号前模匹配条件 **/
    public String getPlaceCodeStarts() {
        return placeCodeStarts;
    }

    /** 设置位置编号前模匹配条件 **/
    public void setPlaceCodeStarts(String placeCodeStarts) {
        this.placeCodeStarts = placeCodeStarts;
    }

    /** 获取位置编号后模匹配条件 **/
    public String getPlaceCodeEnds() {
        return placeCodeEnds;
    }

    /** 设置位置编号后模匹配条件 **/
    public void setPlaceCodeEnds(String placeCodeEnds) {
        this.placeCodeEnds = placeCodeEnds;
    }

    /** 获取位置编号模糊查询条件 **/
    public String getPlaceCodeLike() {
        return placeCodeLike;
    }

    /** 设置位置编号模糊查询条件 **/
    public void setPlaceCodeLike(String placeCodeLike) {
        this.placeCodeLike = placeCodeLike;
    }

    /** 判断内容编号是否为空值查询(true:空值查询|false:非空值查询) **/
    public Boolean getContentCodeIsNull() {
        return contentCodeIsNull;
    }

    /** 设置内容编号空值查询(true:空值查询|false:非空值查询) **/
    public void setContentCodeIsNull(Boolean contentCodeIsNull) {
        this.contentCodeIsNull = contentCodeIsNull;
    }

    /** 获取内容编号前模匹配条件 **/
    public String getContentCodeStarts() {
        return contentCodeStarts;
    }

    /** 设置内容编号前模匹配条件 **/
    public void setContentCodeStarts(String contentCodeStarts) {
        this.contentCodeStarts = contentCodeStarts;
    }

    /** 获取内容编号后模匹配条件 **/
    public String getContentCodeEnds() {
        return contentCodeEnds;
    }

    /** 设置内容编号后模匹配条件 **/
    public void setContentCodeEnds(String contentCodeEnds) {
        this.contentCodeEnds = contentCodeEnds;
    }

    /** 获取内容编号模糊查询条件 **/
    public String getContentCodeLike() {
        return contentCodeLike;
    }

    /** 设置内容编号模糊查询条件 **/
    public void setContentCodeLike(String contentCodeLike) {
        this.contentCodeLike = contentCodeLike;
    }

    /** 判断标题是否为空值查询(true:空值查询|false:非空值查询) **/
    public Boolean getContentTitleIsNull() {
        return contentTitleIsNull;
    }

    /** 设置标题空值查询(true:空值查询|false:非空值查询) **/
    public void setContentTitleIsNull(Boolean contentTitleIsNull) {
        this.contentTitleIsNull = contentTitleIsNull;
    }

    /** 获取标题前模匹配条件 **/
    public String getContentTitleStarts() {
        return contentTitleStarts;
    }

    /** 设置标题前模匹配条件 **/
    public void setContentTitleStarts(String contentTitleStarts) {
        this.contentTitleStarts = contentTitleStarts;
    }

    /** 获取标题后模匹配条件 **/
    public String getContentTitleEnds() {
        return contentTitleEnds;
    }

    /** 设置标题后模匹配条件 **/
    public void setContentTitleEnds(String contentTitleEnds) {
        this.contentTitleEnds = contentTitleEnds;
    }

    /** 获取标题模糊查询条件 **/
    public String getContentTitleLike() {
        return contentTitleLike;
    }

    /** 设置标题模糊查询条件 **/
    public void setContentTitleLike(String contentTitleLike) {
        this.contentTitleLike = contentTitleLike;
    }

    /** 判断内容是否为空值查询(true:空值查询|false:非空值查询) **/
    public Boolean getContentValueIsNull() {
        return contentValueIsNull;
    }

    /**
     * 设置内容空值查询(true:空值查询|false:非空值查询)
     *
     * @param contentValueIsNull 内容空值查询
     * @deprecated 该字段为非空字段
     */
    @Deprecated
    public void setContentValueIsNull(Boolean contentValueIsNull) {
        this.contentValueIsNull = contentValueIsNull;
    }

    /** 判断描述是否为空值查询(true:空值查询|false:非空值查询) **/
    public Boolean getContentDescIsNull() {
        return contentDescIsNull;
    }

    /** 设置描述空值查询(true:空值查询|false:非空值查询) **/
    public void setContentDescIsNull(Boolean contentDescIsNull) {
        this.contentDescIsNull = contentDescIsNull;
    }

    /** 获取描述前模匹配条件 **/
    public String getContentDescStarts() {
        return contentDescStarts;
    }

    /** 设置描述前模匹配条件 **/
    public void setContentDescStarts(String contentDescStarts) {
        this.contentDescStarts = contentDescStarts;
    }

    /** 获取描述后模匹配条件 **/
    public String getContentDescEnds() {
        return contentDescEnds;
    }

    /** 设置描述后模匹配条件 **/
    public void setContentDescEnds(String contentDescEnds) {
        this.contentDescEnds = contentDescEnds;
    }

    /** 获取描述模糊查询条件 **/
    public String getContentDescLike() {
        return contentDescLike;
    }

    /** 设置描述模糊查询条件 **/
    public void setContentDescLike(String contentDescLike) {
        this.contentDescLike = contentDescLike;
    }

    /** 判断排序值(越小越靠前)是否为空值查询(true:空值查询|false:非空值查询) **/
    public Boolean getSortIndexIsNull() {
        return sortIndexIsNull;
    }

    /**
     * 设置排序值(越小越靠前)空值查询(true:空值查询|false:非空值查询)
     *
     * @param sortIndexIsNull 排序值(越小越靠前)空值查询
     * @deprecated 该字段为非空字段
     */
    @Deprecated
    public void setSortIndexIsNull(Boolean sortIndexIsNull) {
        this.sortIndexIsNull = sortIndexIsNull;
    }

    /** 获取最小排序值(越小越靠前) **/
    public Integer getSortIndexMin() {
        return sortIndexMin;
    }

    /** 设置最小排序值(越小越靠前) **/
    public void setSortIndexMin(Integer sortIndexMin) {
        this.sortIndexMin = sortIndexMin;
    }

    /** 获取最大排序值(越小越靠前) **/
    public Integer getSortIndexMax() {
        return sortIndexMax;
    }

    /** 设置最大排序值(越小越靠前) **/
    public void setSortIndexMax(Integer sortIndexMax) {
        this.sortIndexMax = sortIndexMax;
    }

    /** 判断选项是否为空值查询(true:空值查询|false:非空值查询) **/
    public Boolean getOptionsIsNull() {
        return optionsIsNull;
    }

    /** 设置选项空值查询(true:空值查询|false:非空值查询) **/
    public void setOptionsIsNull(Boolean optionsIsNull) {
        this.optionsIsNull = optionsIsNull;
    }

    /** 获取最小创建时间 **/
    public Date getCreateTimeMin() {
        return createTimeMin;
    }

    /** 设置最小创建时间 **/
    public void setCreateTimeMin(Date createTimeMin) {
        this.createTimeMin = createTimeMin;
    }

    /** 获取最大创建时间 **/
    public Date getCreateTimeMax() {
        return createTimeMax;
    }

    /** 设置最大创建时间 **/
    public void setCreateTimeMax(Date createTimeMax) {
        this.createTimeMax = createTimeMax;
    }

    /** 获取最小创建时间 **/
    public Date getCreateTimeMinWithDay() {
        return createTimeMinWithDay;
    }

    /** 设置最小创建时间 **/
    public void setCreateTimeMinWithDay(Date createTimeMinWithDay) {
        this.createTimeMinWithDay = createTimeMinWithDay;
    }

    /** 获取最大创建时间 **/
    public Date getCreateTimeMaxWithDay() {
        return createTimeMaxWithDay;
    }

    /** 设置最大创建时间 **/
    public void setCreateTimeMaxWithDay(Date createTimeMaxWithDay) {
        this.createTimeMaxWithDay = createTimeMaxWithDay;
    }

    /** 判断激活时间是否为空值查询(true:空值查询|false:非空值查询) **/
    public Boolean getActiveTimeIsNull() {
        return activeTimeIsNull;
    }

    /** 设置激活时间空值查询(true:空值查询|false:非空值查询) **/
    public void setActiveTimeIsNull(Boolean activeTimeIsNull) {
        this.activeTimeIsNull = activeTimeIsNull;
    }

    /** 获取最小激活时间 **/
    public Date getActiveTimeMin() {
        return activeTimeMin;
    }

    /** 设置最小激活时间 **/
    public void setActiveTimeMin(Date activeTimeMin) {
        this.activeTimeMin = activeTimeMin;
    }

    /** 获取最大激活时间 **/
    public Date getActiveTimeMax() {
        return activeTimeMax;
    }

    /** 设置最大激活时间 **/
    public void setActiveTimeMax(Date activeTimeMax) {
        this.activeTimeMax = activeTimeMax;
    }

    /** 获取最小激活时间 **/
    public Date getActiveTimeMinWithDay() {
        return activeTimeMinWithDay;
    }

    /** 设置最小激活时间 **/
    public void setActiveTimeMinWithDay(Date activeTimeMinWithDay) {
        this.activeTimeMinWithDay = activeTimeMinWithDay;
    }

    /** 获取最大激活时间 **/
    public Date getActiveTimeMaxWithDay() {
        return activeTimeMaxWithDay;
    }

    /** 设置最大激活时间 **/
    public void setActiveTimeMaxWithDay(Date activeTimeMaxWithDay) {
        this.activeTimeMaxWithDay = activeTimeMaxWithDay;
    }

    /** 判断过期时间是否为空值查询(true:空值查询|false:非空值查询) **/
    public Boolean getExpireTimeIsNull() {
        return expireTimeIsNull;
    }

    /** 设置过期时间空值查询(true:空值查询|false:非空值查询) **/
    public void setExpireTimeIsNull(Boolean expireTimeIsNull) {
        this.expireTimeIsNull = expireTimeIsNull;
    }

    /** 获取最小过期时间 **/
    public Date getExpireTimeMin() {
        return expireTimeMin;
    }

    /** 设置最小过期时间 **/
    public void setExpireTimeMin(Date expireTimeMin) {
        this.expireTimeMin = expireTimeMin;
    }

    /** 获取最大过期时间 **/
    public Date getExpireTimeMax() {
        return expireTimeMax;
    }

    /** 设置最大过期时间 **/
    public void setExpireTimeMax(Date expireTimeMax) {
        this.expireTimeMax = expireTimeMax;
    }

    /** 获取最小过期时间 **/
    public Date getExpireTimeMinWithDay() {
        return expireTimeMinWithDay;
    }

    /** 设置最小过期时间 **/
    public void setExpireTimeMinWithDay(Date expireTimeMinWithDay) {
        this.expireTimeMinWithDay = expireTimeMinWithDay;
    }

    /** 获取最大过期时间 **/
    public Date getExpireTimeMaxWithDay() {
        return expireTimeMaxWithDay;
    }

    /** 设置最大过期时间 **/
    public void setExpireTimeMaxWithDay(Date expireTimeMaxWithDay) {
        this.expireTimeMaxWithDay = expireTimeMaxWithDay;
    }

    /** 判断启用状态(1.正常|2.未启用)是否为空值查询(true:空值查询|false:非空值查询) **/
    public Boolean getUsingStateIsNull() {
        return usingStateIsNull;
    }

    /**
     * 设置启用状态(1.正常|2.未启用)空值查询(true:空值查询|false:非空值查询)
     *
     * @param usingStateIsNull 启用状态(1.正常|2.未启用)空值查询
     * @deprecated 该字段为非空字段
     */
    @Deprecated
    public void setUsingStateIsNull(Boolean usingStateIsNull) {
        this.usingStateIsNull = usingStateIsNull;
    }

    /** 获取启用状态(1.正常|2.未启用)列表 **/
    public List<UsingState> getUsingStates() {
        return usingStates;
    }

    /** 设置启用状态(1.正常|2.未启用)列表 **/
    public void setUsingStates(List<UsingState> usingStates) {
        this.usingStates = usingStates;
    }

    /** 增加启用状态(1.正常|2.未启用) **/
    public void addUsingState(UsingState... usingStates) {
        if (this.usingStates == null) {
            this.usingStates = new ArrayList<>();
        }
        this.usingStates.addAll(Arrays.asList(usingStates));
    }

}